﻿//-----------------------------------------------------------------------------------
// <copyright file="AppDomainTestExtensionExecutionTest.cs" company="P.O.S Informatique">
//     Copyright (c) P.O.S Informatique. All rights reserved.
// </copyright>
//-----------------------------------------------------------------------------------
namespace PosInformatique.DevelopmentTools.VisualStudio.TestExtensions.Tests
{
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using Microsoft.VisualStudio.TestTools.UnitTesting;
    using Moq;
    using PosInformatique.Framework;

    [TestClass]
    public class AppDomainTestExtensionExecutionTest
    {
        [TestMethod]
        public void CreateTestMethodInvokerTest()
        {
            TestMethodInvokerContext context;
            context = Mock.Of<TestMethodInvokerContext>();

            AppDomainTestExtensionExecution appDomainExecution;
            appDomainExecution = new AppDomainTestExtensionExecution();

            ITestMethodInvoker invoker;
            invoker = appDomainExecution.CreateTestMethodInvoker(context);

            Assert.IsInstanceOfType(invoker, typeof(AppDomainTestMethodInvoker));
        }
        
        [TestMethod]
        public void InitializeTest()
        {
            TestExecution execution;
            execution = Mock.Of<TestExecution>();

            AppDomainTestExtensionExecution appDomainExecution;
            appDomainExecution = new AppDomainTestExtensionExecution();

            // Ensures nothing is done
            appDomainExecution.Initialize(execution);
        }

        [TestMethod]
        public void DisposeTest()
        {
            AppDomainTestExtensionExecution appDomainExecution;
            appDomainExecution = new AppDomainTestExtensionExecution();

            // Ensures nothing is done
            appDomainExecution.Dispose();
        }
    }
}
